package com.github.icloudpay.pay.core.entity;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Transient;


/**
 * 支付通道配置表
 * 
 * @author hexufeng
 * @date 2018-06-05 14:17:16
 */
@Table(name = "pay_channel_config")
public class PayChannelConfig implements Serializable {
	private static final long serialVersionUID = 1L;
	
	@Id
	private Long id;
	
	    // 支付通道编号
	 @Column(name = "pay_channel_no")
    private String payChannelNo;
	
	    //支付公司编号
    @Column(name = "pay_company_no")
    private String payCompanyNo;
	
	    //第三方商户号
    @Column(name = "out_mer_no")
    private String outMerNo;
    
    	//第三方子商户号
    @Column(name = "out_sub_mer_no")
    private String outSubMerNo;
	
	    //第三方账号
    @Column(name = "out_mer_account")
    private String outMerAccount;
	
	    //第三方密钥
    @Column(name = "out_mer_key")
    private String outMerKey;
    
    	//第三方密钥
    @Column(name = "out_mer_public_key")
    private String outMerPublicKey;
	
	    //加密方式 MD5 RSA
    @Column(name = "sing_type")
    private String singType;
	
	    //证书地址
    @Column(name = "private_key_path")
    private String privateKeyPath;
	
	    //证书密码
    @Column(name = "private_key_pwd")
    private String privateKeyPwd;
	
	    //平台编号
    @Column(name = "platform_id")
    private String platformId;
	
	    //商户号
    @Column(name = "mer_id")
    private String merId;
    
    public Long getId() {
		return id;
	}
	public void setId(Long id) {
		this.id = id;
	}
	/**
     * 支付通道名称
     */
	@Transient
	private String payChannelName;

	/**
	 * 设置： 支付通道编号
	 */
	public void setPayChannelNo(String payChannelNo) {
		this.payChannelNo = payChannelNo;
	}
	/**
	 * 获取： 支付通道编号
	 */
	public String getPayChannelNo() {
		return payChannelNo;
	}
	/**
	 * 设置：支付公司编号
	 */
	public void setPayCompanyNo(String payCompanyNo) {
		this.payCompanyNo = payCompanyNo;
	}
	/**
	 * 获取：支付公司编号
	 */
	public String getPayCompanyNo() {
		return payCompanyNo;
	}
	/**
	 * 设置：第三方商户号
	 */
	public void setOutMerNo(String outMerNo) {
		this.outMerNo = outMerNo;
	}
	/**
	 * 获取：第三方商户号
	 */
	public String getOutMerNo() {
		return outMerNo;
	}
	public String getOutSubMerNo() {
		return outSubMerNo;
	}
	public void setOutSubMerNo(String outSubMerNo) {
		this.outSubMerNo = outSubMerNo;
	}
	/**
	 * 设置：第三方账号
	 */
	public void setOutMerAccount(String outMerAccount) {
		this.outMerAccount = outMerAccount;
	}
	/**
	 * 获取：第三方账号
	 */
	public String getOutMerAccount() {
		return outMerAccount;
	}
	/**
	 * 设置：第三方密钥
	 */
	public void setOutMerKey(String outMerKey) {
		this.outMerKey = outMerKey;
	}
	/**
	 * 获取：第三方密钥
	 */
	public String getOutMerKey() {
		return outMerKey;
	}
	
	public String getOutMerPublicKey() {
		return outMerPublicKey;
	}
	public void setOutMerPublicKey(String outMerPublicKey) {
		this.outMerPublicKey = outMerPublicKey;
	}
	/**
	 * 设置：加密方式 MD5 RSA
	 */
	public void setSingType(String singType) {
		this.singType = singType;
	}
	/**
	 * 获取：加密方式 MD5 RSA
	 */
	public String getSingType() {
		return singType;
	}
	/**
	 * 设置：证书地址
	 */
	public void setPrivateKeyPath(String privateKeyPath) {
		this.privateKeyPath = privateKeyPath;
	}
	/**
	 * 获取：证书地址
	 */
	public String getPrivateKeyPath() {
		return privateKeyPath;
	}
	/**
	 * 设置：证书密码
	 */
	public void setPrivateKeyPwd(String privateKeyPwd) {
		this.privateKeyPwd = privateKeyPwd;
	}
	/**
	 * 获取：证书密码
	 */
	public String getPrivateKeyPwd() {
		return privateKeyPwd;
	}
	/**
	 * 设置：平台编号
	 */
	public void setPlatformId(String platformId) {
		this.platformId = platformId;
	}
	/**
	 * 获取：平台编号
	 */
	public String getPlatformId() {
		return platformId;
	}
	public String getMerId() {
		return merId;
	}
	public void setMerId(String merId) {
		this.merId = merId;
	}
	public String getPayChannelName() {
		return payChannelName;
	}
	public void setPayChannelName(String payChannelName) {
		this.payChannelName = payChannelName;
	}
	@Override
	public String toString() {
		return "PayChannelConfig [payChannelNo=" + payChannelNo + ", payCompanyNo=" + payCompanyNo + ", outMerNo="
				+ outMerNo + ", outSubMerNo=" + outSubMerNo + ", outMerAccount=" + outMerAccount + ", outMerKey="
				+ outMerKey + ", outMerPublicKey=" + outMerPublicKey + ", singType=" + singType + ", privateKeyPath="
				+ privateKeyPath + ", privateKeyPwd=" + privateKeyPwd + ", platformId=" + platformId + ", merId="
				+ merId + ", payChannelName=" + payChannelName + "]";
	}
	
}
